package com.wfy.common.util;

import org.apache.commons.lang3.SerializationUtils;

import java.io.Serializable;

/**
 * Created with IntelliJ IDEA.
 * User: wangxindong
 * Date: 2017/9/29
 * Time: 16:42
 */
public class SerializeUtils extends SerializationUtils {

    // ================================================================
    // Constants
    // ================================================================

    // ================================================================
    // Fields
    // ================================================================


    // ================================================================
    // Constructors
    // ================================================================

    // ================================================================
    // Methods from/for super Interfaces or SuperClass
    // ================================================================

    // ================================================================
    // Public or Protected Methods
    // ================================================================

    public static String serializeToString(Serializable obj) {
        try {
            byte[] value = serialize(obj);
            return value.toString();
        } catch (Exception e) {
            throw new RuntimeException("serialize session error", e);
        }
    }

    public static <T> T deserializeFromString(String value) {
        try {
            return deserialize(value.getBytes());
        } catch (Exception e) {
            throw new RuntimeException("deserialize session error", e);
        }
    }


    // ================================================================
    // Getter & Setter
    // ================================================================

    // ================================================================
    // Private Methods
    // ================================================================


    // ================================================================
    // Inner or Anonymous Class
    // ================================================================

    // ================================================================
    // Test Methods
    // ================================================================

}
